package com.cleaningcloud.erp.service;

import java.util.List;
import com.cleaningcloud.erp.domain.ErpProcudeReturn;
import com.cleaningcloud.erp.domain.dto.ErpProcudeReturnDto;
import com.cleaningcloud.erp.domain.vo.ErpProcudeReturnVo;

/**
 * 采购退换货Service接口
 * 
 * @author cleaningcloud
 * @date 2024-10-05
 */
public interface IErpProcudeReturnService 
{
    /**
     * 查询采购退换货
     * 
     * @param procudeReturnId 采购退换货主键
     * @return 采购退换货
     */
    ErpProcudeReturn selectErpProcudeReturnByProcudeReturnId(Long procudeReturnId);

    /**
     * 查询采购退换货列表
     * 
     * @param erpProcudeReturn 采购退换货
     * @return 采购退换货集合
     */
    List<ErpProcudeReturnVo> selectErpProcudeReturnList(ErpProcudeReturnDto erpProcudeReturn);

    /**
     * 新增采购退换货
     * 
     * @param erpProcudeReturn 采购退换货
     * @return 结果
     */
    int insertErpProcudeReturn(ErpProcudeReturnDto erpProcudeReturn);

    /**
     * 修改采购退换货
     * 
     * @param erpProcudeReturn 采购退换货
     * @return 结果
     */
    int updateErpProcudeReturn(ErpProcudeReturnDto erpProcudeReturn);

    /**
     * 审核
     * @param erpProcudeReturn
     * @return
     */
    int auditErpProcudeReturn(ErpProcudeReturn erpProcudeReturn);

    /**
     * 批量删除采购退换货
     * 
     * @param procudeReturnIds 需要删除的采购退换货主键集合
     * @return 结果
     */
    int deleteErpProcudeReturnByProcudeReturnIds(Long[] procudeReturnIds);

    /**
     * 删除采购退换货信息
     * 
     * @param procudeReturnId 采购退换货主键
     * @return 结果
     */
    int deleteErpProcudeReturnByProcudeReturnId(Long procudeReturnId);
}
